Matthias Clasen [Sun, 28 Mar 2021 14:59:55 +0000 (10:59 -0400)]
textview: Tweak render nodes
Arrange for the contents to be in a single transform
node that is updated as we scroll. This makes the job
of the render node differ a lot easier, since it does
not have to compare to big containers one-by-one.
Matthias Clasen [Sun, 28 Mar 2021 14:23:35 +0000 (14:23 +0000)]
Merge branch 'fix-memleaks' into 'master'
Fix memleaks
See merge request GNOME/gtk!3360
Matthias Clasen [Sun, 28 Mar 2021 01:52:49 +0000 (21:52 -0400)]
Plug a test memleak
Matthias Clasen [Sun, 28 Mar 2021 01:44:19 +0000 (21:44 -0400)]
Plug a memory leak in an error path
Matthias Clasen [Sun, 28 Mar 2021 01:43:59 +0000 (21:43 -0400)]
Ignore pthread allocations in valgrind
Matthias Clasen [Sun, 28 Mar 2021 01:13:25 +0000 (21:13 -0400)]
tests: Plug a memory leak
Matthias Clasen [Sun, 28 Mar 2021 00:44:18 +0000 (20:44 -0400)]
tests: Make the pixbuf test use TAP
Otherwise, meson just considers this test skipped.
Matthias Clasen [Sun, 28 Mar 2021 00:20:49 +0000 (20:20 -0400)]
asan: Ignore leaks from librsvg
Turns out that there are some leaks from librsvg.
Matthias Clasen [Sat, 27 Mar 2021 23:56:36 +0000 (19:56 -0400)]
tests: Plug memory leaks
This one was pointed out by asan.
Matthias Clasen [Sat, 27 Mar 2021 23:47:05 +0000 (23:47 +0000)]
Merge branch 'fix-memleaks' into 'master'
Fix memleaks
See merge request GNOME/gtk!3359
Matthias Clasen [Sat, 27 Mar 2021 23:11:25 +0000 (19:11 -0400)]
notebook: Don't leak the pages property
We were misuing a transfer-full getter here.
Matthias Clasen [Sat, 27 Mar 2021 23:10:53 +0000 (19:10 -0400)]
stack: Don't leak the pages property
We were misusing a transfer-full getter here.
Matthias Clasen [Sat, 27 Mar 2021 22:40:12 +0000 (18:40 -0400)]
builder: Plug a small memory leak
We were forgetting to free expression info
objects in one place.
Matthias Clasen [Sat, 27 Mar 2021 22:39:37 +0000 (18:39 -0400)]
builder: Add an assertion
This case is clearly not meant to happen.
Assert that it doesn't.
Matthias Clasen [Sat, 27 Mar 2021 21:06:14 +0000 (17:06 -0400)]
settings: Plug a memory leak
It is rare that settings are finalized, but we
still shouldn't leak in that case.
Matthias Clasen [Sat, 27 Mar 2021 21:01:10 +0000 (17:01 -0400)]
Plug a small memory leak
Matthias Clasen [Sat, 27 Mar 2021 20:48:30 +0000 (16:48 -0400)]
bookmarklist: Avoid an invalid read
This shows up when running the objects-finalize
test under valgrind.
Matthias Clasen [Sat, 27 Mar 2021 20:59:54 +0000 (20:59 +0000)]
Merge branch 'ngl-uninitialized-matrix' into 'master'
Ngl uninitialized matrix
See merge request GNOME/gtk!3358
Anders Jonsson [Sat, 27 Mar 2021 20:43:11 +0000 (20:43 +0000)]
Update Swedish translation
(cherry picked from commit
86f3c11d1ea5e15e7ca9c263d52b2f5fdbfa4a18)
Matthias Clasen [Sat, 27 Mar 2021 20:23:40 +0000 (16:23 -0400)]
ngl: Fix an uninitialized read
We were using the wrong matrix here.
valgrind pointed this point.
Matthias Clasen [Sat, 27 Mar 2021 20:23:17 +0000 (16:23 -0400)]
reftests: Plug a few memory leaks
Noticed in passing.
Matthias Clasen [Sat, 27 Mar 2021 20:23:40 +0000 (16:23 -0400)]
ngl: Fix an uninitialized read
We were using the wrong matrix here.
valgrind pointed this point.
Matthias Clasen [Sat, 27 Mar 2021 20:23:17 +0000 (16:23 -0400)]
reftests: Plug a few memory leaks
Noticed in passing.
Matthias Clasen [Sat, 27 Mar 2021 18:22:19 +0000 (14:22 -0400)]
release: Actually include docs
Matthias Clasen [Thu, 25 Mar 2021 11:44:51 +0000 (07:44 -0400)]
Updates
Matthias Clasen [Sat, 27 Mar 2021 14:23:15 +0000 (14:23 +0000)]
Merge branch 'file-chooser-fixes' into 'master'
File chooser fixes
See merge request GNOME/gtk!3356
Matthias Clasen [Sat, 27 Mar 2021 13:57:00 +0000 (09:57 -0400)]
filechooser: Make / work as shortcut again
Typing / is meant to open the location entry, so
prevent search from capturing that key.
Matthias Clasen [Sat, 27 Mar 2021 13:54:20 +0000 (09:54 -0400)]
filechooser: Fix fallout from GtkText
Ever since the GtkText split, the focus is no longer
on an entry, but inside it. The filechooser was never
updated for that.
Matthias Clasen [Sat, 27 Mar 2021 13:53:43 +0000 (09:53 -0400)]
filechooser: Make Ctrl-L work again
Prevent search from preempting the Ctrl-L shortcut
that is meant to show the location entry.
Matthias Clasen [Sat, 27 Mar 2021 12:59:21 +0000 (08:59 -0400)]
layout: Be quiet about trivialities
Commit
8b82993dde5bea985d added a noisy warning
to gtk_distribute_natural_allocation to quiet a
compiler warning. It turn out that the file chooser
managed to trigger this warning, so make it a quiet
return.
Matthias Clasen [Sat, 27 Mar 2021 12:55:51 +0000 (08:55 -0400)]
release: Update included subprojects
Matthias Clasen [Sat, 27 Mar 2021 01:22:41 +0000 (01:22 +0000)]
Merge branch 'double-dead-keys' into 'master'
Double dead keys
See merge request GNOME/gtk!3355
Matthias Clasen [Sat, 27 Mar 2021 00:14:24 +0000 (20:14 -0400)]
Add some more compose tests
These tests changes to the algorithmic dead key
matching.
Matthias Clasen [Fri, 26 Mar 2021 23:50:05 +0000 (19:50 -0400)]
imcontext: Tweak dead key handling
Reshuffle things to allow for a limited amount of
dead key 'chaining'. We keep up to 2 dead keys in
the preedit, so you can type
<dead_acute> <dead_cedilla> <c>
to produce ḉ, while still getting ```c with
<dead_grave> <dead_grave> <dead_grave> <c>.
Matthias Clasen [Fri, 26 Mar 2021 23:48:41 +0000 (19:48 -0400)]
composetable: Limit algorithmic checking
Only check for combinations of up to 2 dead keys with
a base character. We don't want to spend ages generating
all permutations of long sequences.
Matthias Clasen [Fri, 26 Mar 2021 19:33:13 +0000 (19:33 +0000)]
Merge branch 'icon-fallback' into 'master'
Icon fallback
See merge request GNOME/gtk!3353
Matthias Clasen [Fri, 26 Mar 2021 18:15:07 +0000 (14:15 -0400)]
widget-factory: Add missing icons
This removes all the cases where we were showing a missing-image
when running with the hicolor icontheme.
Matthias Clasen [Fri, 26 Mar 2021 17:30:46 +0000 (13:30 -0400)]
widget-factory: Drop two icons from the iconview
This avoids the scrollbar by default, which is nice.
Matthias Clasen [Fri, 26 Mar 2021 17:17:06 +0000 (13:17 -0400)]
icons: Add text-x-generic
The file chooser needs at least one icon that we can
fall back to for non-directories. text-x-generic is
that icon.
Matthias Clasen [Fri, 26 Mar 2021 17:15:19 +0000 (13:15 -0400)]
filechooser: Check that icons exist
Otherwise we end up showing missing-image in the
file chooser, and thats sad.
Matthias Clasen [Fri, 26 Mar 2021 17:15:54 +0000 (13:15 -0400)]
icontheme: Add gtk_icon_theme_has_gicon
Add a utility function to check whether the icontheme
will produce something better than missing-image for
a GIcon. Obviously, we can only answer this question
if the GIcon is a themed icon the begin with.
Matthias Clasen [Fri, 26 Mar 2021 15:59:37 +0000 (11:59 -0400)]
widget-factory: Add emblem-shared-symbolic icon
We use it, so include it.
Matthias Clasen [Fri, 26 Mar 2021 15:59:01 +0000 (11:59 -0400)]
icons: Sync color-select-symbolic with Adwaita
This icon changed a bit since we incorporated it.
Matthias Clasen [Fri, 26 Mar 2021 15:42:09 +0000 (11:42 -0400)]
icons: Add system-run-symbolic
This is used by Adwaita for devel headers, so include it.
Matthias Clasen [Fri, 26 Mar 2021 15:30:51 +0000 (15:30 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!3351
Matthias Clasen [Fri, 26 Mar 2021 15:30:14 +0000 (11:30 -0400)]
icon: Add a printer icon
This showed up as missing icon in the print dialog when
used with the hicolor icontheme.
Matthias Clasen [Fri, 26 Mar 2021 15:09:50 +0000 (11:09 -0400)]
gdk: Add an arg check to gdk_device_get_timestamp
Pointed out by Emmanuele Bassi.
Matthias Clasen [Fri, 26 Mar 2021 02:39:15 +0000 (22:39 -0400)]
gdk: Add gdk_device_get_timestamp
Give each device a timestamp that reflects the last
user activity with that device, as reflected in the
events that are produced for this device.
Matthias Clasen [Fri, 26 Mar 2021 15:00:01 +0000 (11:00 -0400)]
icons: Add icons that are used in the inspector
These were showing up as missing icons when opening
the Inspector with the hicolor icontheme:
system-search-symbolic
go-previous-symbolic
go-next-symbolic
display-brightness-symbolic
Matthias Clasen [Fri, 26 Mar 2021 14:51:37 +0000 (14:51 +0000)]
Merge branch 'device-timestamp' into 'master'
Device timestamp
Closes #3792
See merge request GNOME/gtk!3350
Matthias Clasen [Fri, 26 Mar 2021 02:42:10 +0000 (22:42 -0400)]
textview: Use device timestamps for obscured cursors
Stash away the device timestamp when obscuring
the pointer, and compare it when we decice whether
to unobscure it. This fixes a problem where synthetic
motion events would make the cursor reappear
prematurely.
Fixes: #3792
Matthias Clasen [Fri, 26 Mar 2021 02:40:30 +0000 (22:40 -0400)]
text: Use device timestamps for obscured cursors
Stash away the device timestamp when obscuring
the pointer, and compare it when we decice whether
to unobscure it. This fixes a problem where synthetic
motion events would make the cursor reappear
prematurely.
Matthias Clasen [Fri, 26 Mar 2021 02:39:15 +0000 (22:39 -0400)]
gdk: Add gdk_device_get_timestamp
Give each device a timestamp that reflects the last
user activity with that device, as reflected in the
events that are produced for this device.
Matthias Clasen [Fri, 26 Mar 2021 11:29:47 +0000 (11:29 +0000)]
Merge branch 'pixbuf-loader-check' into 'master'
Make testsuite fail if we lack pixbuf loaders
See merge request GNOME/gtk!3348
Matthias Clasen [Fri, 26 Mar 2021 02:52:30 +0000 (22:52 -0400)]
Be explicit when building gdk-pixbuf subproject
We require png and jpeg loaders.
Matthias Clasen [Fri, 26 Mar 2021 01:22:23 +0000 (21:22 -0400)]
Make testsuite fail if we lack pixbuf loaders
Add a test that requires that we have png and jpeg
loaders.
Matthias Clasen [Fri, 26 Mar 2021 01:22:23 +0000 (21:22 -0400)]
Make testsuite fail if we lack pixbuf loaders
Add a test that requires that we have png and jpeg
loaders.
Matthias Clasen [Thu, 25 Mar 2021 21:26:15 +0000 (17:26 -0400)]
Add logging for icon fallback
Add GTK_DEBUG=iconfallback which prints out what icon names
we fall back to image-missing for.
Matthias Clasen [Thu, 25 Mar 2021 20:48:28 +0000 (20:48 +0000)]
Merge branch 'carlosgc/clipboard-crash' into 'master'
clipboard: Fix a crash when GdkContentProviderUnion doesn't support the given data format
See merge request GNOME/gtk!3346
Carlos Garcia Campos [Thu, 25 Mar 2021 14:10:00 +0000 (15:10 +0100)]
clipboard: Fix a crash when GdkContentProviderUnion doesn't support the given data format
After iterating all the providers, all of them returning unsupported
error, gdk_content_provider_union_get_value() returns FALSE without
filing the given GError. Then gdk_clipboard_read_value_internal()
assumes there's a GError when FALSE is returned and
g_task_return_error() fails. We can just chain up to parent
implementation to ensure the GError is filled with unsupported error.
Matthias Clasen [Thu, 25 Mar 2021 12:37:12 +0000 (12:37 +0000)]
Merge branch 'shader' into 'master'
ngl: Fix crash with intel driver on Windows when compiling shaders
Closes #3783
See merge request GNOME/gtk!3344
Xavier Claessens [Wed, 24 Mar 2021 13:30:02 +0000 (09:30 -0400)]
ngl: Fix crash with intel driver on Windows when compiling shaders
Fixes #3783.
Matthias Clasen [Wed, 24 Mar 2021 20:34:47 +0000 (20:34 +0000)]
Merge branch 'wip/fix-stack-get-item' into 'master'
stack: Fix some list model issues
See merge request GNOME/gtk!3345
Mohammed Sadiq [Wed, 24 Mar 2021 14:53:09 +0000 (20:23 +0530)]
stack: Fix check if page is selected
When there is no visible child, gtk_selection_model_is_selected()
was returning TRUE for any invalid position.
So check if the page is non-NULL and match
Mohammed Sadiq [Wed, 24 Mar 2021 13:48:02 +0000 (19:18 +0530)]
stack: Increase reference only if page is non-NULL
g_list_nth_data() may return NULL if position is off the end
Matthias Clasen [Wed, 24 Mar 2021 11:21:21 +0000 (11:21 +0000)]
Merge branch 'gles-fallback' into 'master'
gdkglcontext-wayland: Fallback to GLES 2.0 after legacy failed
See merge request GNOME/gtk!3327
Matthias Clasen [Wed, 24 Mar 2021 11:09:51 +0000 (11:09 +0000)]
Merge branch 'gdkmacosglcontext-fix' into 'master'
gdkmacosglcontext: fix compilation error
See merge request GNOME/gtk!3342
Tom Schoonjans [Wed, 24 Mar 2021 10:07:55 +0000 (10:07 +0000)]
gdkmacosglcontext: fix compilation error
See https://developer.apple.com/documentation/appkit/nsopenglpixelformat/
1436219-initwithattributes?language=occ
Matthias Clasen [Tue, 23 Mar 2021 21:02:39 +0000 (21:02 +0000)]
Merge branch 'builder-tool-placeholder-crash' into 'master'
gtk-builder-tool: Avoid a crash with <placeholder/>
Closes #3781
See merge request GNOME/gtk!3339
Matthias Clasen [Tue, 23 Mar 2021 21:02:11 +0000 (21:02 +0000)]
Merge branch 'wip/chergert/ngl-fix-windows-intel-driver' into 'master'
ngl: move uniform key mapping into uniform state
Closes #3780
See merge request GNOME/gtk!3340
Christian Hergert [Tue, 23 Mar 2021 19:10:12 +0000 (12:10 -0700)]
ngl: move uniform key mapping into uniform state
Previously, we translated the uniform key (an enum) into a location within
the shader program in GskNglProgram. A number of performance improvements
were focused around having low nubers for the uniform locations. Generally
this is the case, but some drivers such as old Intel drivers on Windows
may use rather large numbers for those.
To combat this, we can push the translation of uniform keys into locations
at the GskNglUniformState level so that we work with unranslated keys
through the process until applying them.
Fixes #3780
Matthias Clasen [Tue, 23 Mar 2021 19:24:30 +0000 (15:24 -0400)]
gtk-builder-tool: Avoid a crash with <placeholder/>
Not sure we can do much with a ui file that has
<placeholder/> elements littered throughout. But
at least we can avoid crashing while trying to
convert it.
Fixes: #3781
Emmanuele Bassi [Tue, 23 Mar 2021 15:39:47 +0000 (15:39 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Ebassi/for master
See merge request GNOME/gtk!3338
Emmanuele Bassi [Tue, 23 Mar 2021 14:58:03 +0000 (14:58 +0000)]
docs: Add a side bar to the docs.gtk.org landing page
Make it look like the API references hosted on docs.gtk.org.
Emmanuele Bassi [Tue, 23 Mar 2021 14:49:20 +0000 (14:49 +0000)]
docs: Update the Cairo reference link
Emmanuele Bassi [Tue, 23 Mar 2021 13:39:18 +0000 (13:39 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Publish docs for Pango and GdkPixbuf
See merge request GNOME/gtk!3337
Emmanuele Bassi [Tue, 23 Mar 2021 13:09:28 +0000 (13:09 +0000)]
docs: Drop the external class for links to docs.gtk.org
Emmanuele Bassi [Tue, 23 Mar 2021 12:25:40 +0000 (12:25 +0000)]
docs: Link Pango and GdkPixbuf on docs.gtk.org
Emmanuele Bassi [Tue, 23 Mar 2021 12:25:08 +0000 (12:25 +0000)]
ci: Build Pango and GdkPixbuf's docs
We want to publish them alongside GTK's own API reference.
Matthias Clasen [Tue, 23 Mar 2021 00:49:54 +0000 (00:49 +0000)]
Merge branch 'bilelmoussaoui/expressions-annotations' into 'master'
Add missing nullable annotations to BoolFilter/StringFilter
See merge request GNOME/gtk!3334
Matthias Clasen [Mon, 22 Mar 2021 15:09:42 +0000 (15:09 +0000)]
Merge branch 'issue3715-gtk4' into 'master'
[gtk4] x11/dnd: Ignore XErrors from the COW
Closes #3715
See merge request GNOME/gtk!3336
Olivier Fourdan [Mon, 22 Mar 2021 14:34:31 +0000 (15:34 +0100)]
x11/dnd: Ignore XErrors from the COW
The DnD code for X11 adds the composite overlay window (aka COW) to the
cache.
Yet the X11 requests to get and release the COW may trigger XErrors that
we ought to ignore otherwise the client will abort.
Fixes: #3715
Chun-wei Fan [Mon, 22 Mar 2021 14:18:44 +0000 (14:18 +0000)]
Merge branch 'really-fix-3581' into 'master'
GDK-Win32: Remove extraneous call to _gdk_win32_append_event() (really fix issue #3581)
Closes #3581
See merge request GNOME/gtk!3306
Matthias Clasen [Mon, 22 Mar 2021 12:45:45 +0000 (12:45 +0000)]
Merge branch 'meson-install-script' into 'master'
Meson: Use gnome.install_script()
See merge request GNOME/gtk!3135
Bilal Elmoussaoui [Mon, 22 Mar 2021 11:42:19 +0000 (12:42 +0100)]
gtk: add missing nullable annotations to StringFilter
Bilal Elmoussaoui [Mon, 22 Mar 2021 11:42:13 +0000 (12:42 +0100)]
gtk: add missing nullable annotations to BoolFilter
Matthias Clasen [Mon, 22 Mar 2021 11:17:58 +0000 (11:17 +0000)]
Merge branch 'wip/baedert/for-master' into 'master'
ngl: Remove unused function
See merge request GNOME/gtk!3332
Matthias Clasen [Mon, 22 Mar 2021 02:37:14 +0000 (02:37 +0000)]
Merge branch 'better-dead-keys' into 'master'
Better dead keys
See merge request GNOME/gtk!3329
Matthias Clasen [Mon, 22 Mar 2021 01:05:20 +0000 (21:05 -0400)]
Regenerate compose sequence file
Update our compose sequences based on the current
update xorg Compose.pre file. Beyond that, remove
some deadkey sequences that we are now handling
(better) in code.
Matthias Clasen [Mon, 22 Mar 2021 00:56:17 +0000 (20:56 -0400)]
Move compose related tooling to a subdir
This reduces the clutter in gtk/.
Matthias Clasen [Mon, 22 Mar 2021 00:53:24 +0000 (20:53 -0400)]
compose-parse: Add a negative lookaside
Make this script parse gtk-compose-remove.txt for
sequences to remove from the xorg Compose file.
This will be used for removing some deadkey combinations
that we can handle better in code.
Also, make this script explicitly python2. I tried
porting it to python3, but gave up in the end.
Matthias Clasen [Sun, 21 Mar 2021 22:51:57 +0000 (18:51 -0400)]
imcontext: Improve dead key handling more
For sequences like ``, we want to commit the first
deadkey and then continue preedit with the second.
The alternative is to do chained deadkeys, where
entering ~~a yields ̃̀̃̃a. But we don't do that, and
I think that would be more controversial.
Matthias Clasen [Sun, 21 Mar 2021 22:17:32 +0000 (18:17 -0400)]
imcontext: Improve dead key handling
For sequences like `x, where we don't have a compose
sequence, we still want to commit "`x", and not silently
eat the keys.
Matthias Clasen [Sun, 21 Mar 2021 20:48:04 +0000 (20:48 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!3328
Emmanuel Gil Peyrot [Sun, 21 Mar 2021 20:02:08 +0000 (20:02 +0000)]
gdkglcontext-wayland: Fallback to GLES 2.0 after legacy failed
This lets the NGL backend be selected instead of the Cairo backend on
devices which expose both GL and GLES, but have better support of GLES.
Tested on a PinePhone.
Matthias Clasen [Sun, 21 Mar 2021 20:02:39 +0000 (16:02 -0400)]
inspector: Allow inspecting Unicode
Add a way to show text as a Unicode sequence.
This can be helpful in understanding what is
happening with text.
Matthias Clasen [Sat, 20 Mar 2021 03:18:43 +0000 (23:18 -0400)]
ngl: Fix a rounding error in subpixel positioning
1024 / 4 is 256, not 250.
Matthias Clasen [Sat, 20 Mar 2021 03:17:58 +0000 (23:17 -0400)]
gl: Fix a rounding error in subpixel positioning
1024 / 4 is 256, not 250.
Matthias Clasen [Sat, 20 Mar 2021 01:56:48 +0000 (21:56 -0400)]
build: Disable g_assert in release builds
The ngl renderer is heavily using g_assert, and it
is written with the assumption that these assertions
will be compiled out in release builds.
Matthias Clasen [Sat, 20 Mar 2021 01:03:53 +0000 (21:03 -0400)]
calendar: Typo fix